home *** CD-ROM | disk | FTP | other *** search
/ Nejlepší hry / Nejlepsi hry.iso / hry / sea of chaos / sea_install.msi / _15C39AAA7726369D39812BD40F01CF6A / _92F2BF030CA94A8E8EF11210CEA2027E < prev    next >
Text File  |  2005-04-04  |  880b  |  48 lines

  1. //rain line vertex shader:
  2. //adjusts post-transformed position based on angle
  3. //Luke Lenhart
  4. //(C)2004-2005 Digipen Institute of Technology
  5.  
  6. //x position coord modifier (should be varied from 0 to 1 with angle of camera)
  7. float xMod;
  8.  
  9. //world,view,projection transform
  10. float4x4 matWorldViewProj;
  11.  
  12. //alpha modifier
  13. float alphaMod;
  14.  
  15. //shader input
  16. struct VS_INPUT
  17. {
  18.     float4 Pos : POSITION;
  19.     float4 Color : COLOR;
  20.     float2 texSpecial : TEXCOORD0;
  21. };
  22.  
  23. //shader output
  24. struct VS_OUTPUT
  25. {
  26.     float4 Pos : POSITION;
  27.     float4 Color : COLOR;
  28. };
  29.  
  30. //shader code
  31. VS_OUTPUT VShader(VS_INPUT In)
  32. {
  33.     VS_OUTPUT Out;
  34.     
  35.     //calc transformed position
  36.     Out.Pos=mul(matWorldViewProj, In.Pos);
  37.     
  38.     //adjust position
  39.     Out.Pos.x+=xMod*In.texSpecial.x*3.0f;
  40.     
  41.     //make vert    color
  42.     Out.Color=In.Color;
  43.     Out.Color.a*=alphaMod;
  44.     
  45.     //spit out the results
  46.     return Out;
  47. }
  48.